Swift algorithm tutorial